home *** CD-ROM | disk | FTP | other *** search
/ BMUG PD-ROM A / PD-ROM A.iso / Programming / Programming Help / MacsBug / MacsBug 6.2.1 / Read Me < prev   
Encoding:
Text File  |  1991-05-20  |  5.5 KB  |  158 lines  |  [TEXT/ttxt]

  1. =================================================
  2.  
  3. MacsBug 6.2.1    5/20/91    © Apple Computer, Inc. 1981-91
  4.  
  5. You should use the “Debugger Prefs” included with this MacsBug.
  6. It contains macros, templates, dcmds, and the C++ name unmangler.
  7. You may add your own resources to “Debugger Prefs”,
  8. or remove some to decrease memory usage.
  9.  
  10. =================================================
  11.  
  12. Bugs fixed in 6.2.1
  13.  
  14. Interrupts are reenabled by the RS and RB commands, 
  15. eliminating the irritating hang experienced with these 
  16. commands when running System 7.0.
  17.  
  18. Macsbug 6.2 mismanaged the bus error vector under some 
  19. circumstances, causing disassembly (the IL command or updating 
  20. the PC disassembly pane) to crash if Macsbug caused a bus error
  21. while trying to follow bad address values.  Macsbug 6.2.1 
  22. manages the vector correctly.
  23.  
  24. Macsbug 6.2 turned on interrupts while the HS (heap scramble) 
  25. routine ran, to avoid jerky mouse movement.  This caused a 
  26. problem with managing supervisor/user mode correctly when
  27. running under VM.  For this release, interrupts remain disabled 
  28. to prevent this problem.
  29.  
  30.  
  31. New features since 6.1
  32.  
  33. MacsBug 6.2.1 supports the Macintosh Plus and all newer
  34. Macintosh models. These are the Macintosh Plus, SE, II, IIx,
  35. IIcx, SE30, Portable, IIci, IIfx, Classic, IIsi and LC.
  36.  
  37. MacsBug 6.2.1 works reliably with all Apple monitors and all
  38. third-party monitors if their slot ROM and driver software
  39. have been designed according to the guidelines presented
  40. in Designing Cards and Drivers for the Macintosh II and
  41. Macintosh SE, with and without 32 bit QuickDraw.
  42.  
  43. MacsBug 6.2.1 runs under A/UX 2.0.
  44.  
  45. Typing Command-D instead of Command-; with an international
  46. keyboard accesses the symbol list.
  47.  
  48. If the selected symbol in the scrollable list contains a
  49. C++ or Object Pascal class name, then pressing the tab key
  50. qualifies the list by that name.
  51.  
  52. MacsBug 6.2.1 displays the name of the current application,
  53. the memory management scheme (24 bit/32 bit) currently used,
  54. and whether you are running and have access to virtual memory.
  55.  
  56. New options for the Find command allow you to specify the width
  57. of the pattern for which MacsBug searches. One of these options
  58. allows MacsBug to look for 24 bit pointers.
  59.  
  60. The heap dump display is more detailed and works with 24 bit
  61. and 32 bit heaps.
  62.  
  63. An extension to the GT command allows you to specify
  64. one or more MacsBug commands to be executed
  65. once the specified breakpoint is reached.
  66.  
  67. Beginning with MacsBug 6.1 (but not documented),
  68. the DebugStr trap was extended so that you could include
  69. one or more commands in the message string to DebugStr.
  70. After MacsBug is invoked by the DebugStr trap, in addition
  71. to displaying a message specified with DebugStr, MacsBug
  72. executes the command(s) included in the message for DebugStr.
  73. The syntax for the call is as follows:
  74.  
  75. DebugStr ("string [; cmd]")
  76.   string is the message to display.
  77.   cmd is a MacsBug command or macro.
  78.  
  79. Example:
  80.  
  81. DebugStr ("Checking the heap ;hc ;g")
  82.  
  83. This routine invokes MacsBug, display the message "Checking
  84. the Heap", does a heap check, and resumes execution of the
  85. program.
  86.  
  87. The printf dcmd included in “Debugger Prefs” allows you to
  88. produce formatted output.
  89.  
  90. =================================================
  91.  
  92. Changes after the 6.2 release notes went final
  93.  
  94. The 'mxbh' help resource now resides in the “MacsBug” file
  95. of MacsBug 6.2.1.
  96.  
  97. SC6, SC7, and HZ take optional parameters. More information on
  98. these parameters can be obtained from the help command.
  99.  
  100. The SC commands allow to crawl stacks anywhere in the memory.
  101. HZ knows about embedded, 24 bit, and 32 bit heaps.
  102. HX allows to switch to partially damaged heaps.
  103. HD knows a new Q option and displays an additional summary line.
  104.  
  105. HZ and HD display partially damaged blocks and heaps with ! or ?
  106. next to the address.
  107.  
  108. If an address is in a known resource but not in a known
  109. procedure then an artificial symbol may be displayed by MacsBug.
  110. E.g. 'CODE 0006 0C20 Pickers'+0262 indicates the address which
  111. is $262 bytes offset into CODE 6 resource, named "Pickers", of
  112. file $0C20.
  113.  
  114. =================================================
  115.  
  116. We know about some bugs :
  117.  
  118. If ATR is on and A0 points into hardware registers on some
  119. NuBus cards then reading the bytes which A0 points to may
  120. cause the card to perform erratically (e.g. video flickering,
  121. network malfunction).
  122. For now try to use ATT instead in such situations.
  123.  
  124. Sometimes MacsBug loses FPU status when an NMI interrupts
  125. two consecutive FPU instructions.
  126. If you encounter this use _DebugStr instead of hitting the NMI.
  127.  
  128. There are still problems with a few video cards and video
  129. drivers.
  130. For now if you have more than one screen try to run MacsBug
  131. on the other screen.
  132.  
  133. If you use a pre-release of System 7.0 and switch VM on then
  134. use common sense to avoid :
  135. - using the MacsBug Find command over NuBus card memory
  136. - searching for symbols in memory that is swapped to disk
  137.   (you may want to consider using the SX command)
  138.  
  139. ATHC sometimes reports an invalid heap if the Memory Manager
  140. calls _BlockMove while the heap zone free bytes are not yet
  141. adjusted.
  142. For now ignore these warnings or use ATHCA.
  143.  
  144. The source code provided for dcmds requires MPW 3.1 to build
  145. the dcmds. It currently does not build with MPW 3.2.
  146. This does not affect the execution of the dcmds included in
  147. the file “Debugger Prefs”.
  148.  
  149. =================================================
  150.  
  151. In addition to these specific changes,
  152. you should find MacsBug 6.2.1 easier to use.
  153.  
  154. Whenever possible its output has been made more articulate
  155. and its displays more intelligible.
  156.  
  157. Feedback is an important and appreciated contribution.
  158.